/* 
    实现call函数 改变this指向 并执行函数的到结果
*/

function call(Fn, obj, ...args) {
    if (obj === undefined || obj === null) {
        obj = globalThis; // 全局对象
    }
    // 为obj添加临时方法
    obj.temp = Fn;
    // 调用temp方法
    let result = obj.temp(...args);
    // 复原obj 删除temp
    delete obj.temp;
    // 返回结果
    return result;
}